package cn.wen.core.db;

import android.database.sqlite.SQLiteDatabase;

import java.util.List;


/**
 * 数据库的接口
 */

public interface IDaoSupport<T> {
    void init(SQLiteDatabase sqLiteDatabase, Class<T> clazz);

    /**
     * 插入数据
     *
     * @param obj 要插入的对象
     * @return 返回影响的行数
     */
    long insert(T obj);

    /**
     * 插入数据
     *
     * @param data 要插入的集合
     */
    void insert(List<T> data);


    int delete(String whereClause, String... whereArgs);

    int update(T obj, String whereClause, String... whereArgs);

    // 获取专门查询的支持类
    QuerySupport<T> querySupport();

    void close();
}
